package cn.cc.common.utils;

import cn.cc.goods.service.domain.EsResultSourceDO;

import java.lang.reflect.Field;
import java.util.Map;

/**
 * @program: smail-mi-cloud
 * @description: map转为javabean
 * @author: Mr.WuChao
 * @create: 2021-07-20 17:40
 **/
public class MapToBeans {
    public static <T> T getObject(Map<String, Object> map, Class<T> t) {
        T obj = null;
        try {
            //创建对象中的所有字段
            obj = t.newInstance();
            //获取对象中的所有字段
            Field[] field = t.getDeclaredFields();
            for (Field f : field) {
                String fname = f.getName();
                Object value = map.get(fname);
                //设置属性可访问
                f.setAccessible(true);
                //为目标对象设置值
                f.set(obj, value);
            }
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }
        return obj;
    }


}
